9 #define MAX(a,b) a>b?a:b
10 #define toPAngle(angle) angle>0?angle:(angle+pi)
11 #define D(X) cerr<<__LINE__<<" "<<#X<<" "<<x<<endl
12 const double pi
=acos(-1);
23 bool operator <(const point
&t
)const{
24 return x
<t
.x
||(x
==t
.x
&&y
<t
.y
);
33 for(int ans
;cases
-- && cin
.peek()!=EOF
;printf("%d\n",ans
),cases
<=0?:printf("\n")){
36 for(string dum
;getline(cin
,dum
) && dum
!="";p
.push_back(point(dum
)));
37 if(p
.size()<3)continue;
38 sort(p
.begin(),p
.end());
40 for(int i
=0;i
<p
.size()-1;++i
){
41 map
<double,int> angles
;
42 for(int j
=i
+1;j
<p
.size();++j
){
43 m
=toPAngle(atan2(p
[i
].y
-p
[j
].y
,p
[i
].x
-p
[j
].x
));
48 printf("%lf between (%lf, %lf) and (%lf, %lf), angles[m] = %d\n", m
, p
[i
].x
, p
[i
].y
,
49 p
[j
].x
, p
[j
].y
, angles
[m
]);
50 ans
=MAX(angles
[m
],ans
);